/*
 * Created by JFormDesigner on Mon May 08 09:06:45 CST 2023
 */

package com.heather.exam.until;


import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

/**
 * @author 16690
 */
public class Register {

    public String sendEmail(String email,String authCode) throws MessagingException {
        Properties props = new Properties();
        // 表示SMTP发送邮件，必须进行身份验证
        props.put("mail.smtp.auth", "true");
        //此处填写SMTP服务器
        props.put("mail.smtp.host", "smtp.qq.com");
        //端口号，QQ邮箱端口587
        props.put("mail.smtp.port", "587");
        // 此处填写，写信人的账号
        props.put("mail.user", "1669067419@qq.com");//这里改为你的邮箱
        // 此处填写16位STMP口令
        props.put("mail.password", "istsyvnhwrbndgjd");//这里改为你的口令

        // 构建授权信息，用于进行SMTP进行身份验证

        Authenticator authenticator = new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                // 用户名、密码，都不用改直接copy
                String userName = props.getProperty("mail.user");
                String password = props.getProperty("mail.password");

                return new PasswordAuthentication(userName, password);
            }
        };
        // 使用环境属性和授权信息，创建邮件会话
        Session mailSession = Session.getInstance(props, authenticator);
        // 创建邮件消息
        MimeMessage message = new MimeMessage(mailSession);
        // 设置发件人，
        InternetAddress form = null;
        try {
            form = new InternetAddress(props.getProperty("mail.user"));
            message.setFrom(form);
            // 设置收件人的邮箱
            InternetAddress to = new InternetAddress(email);
            message.setRecipient(Message.RecipientType.TO, to);
            // 设置邮件标题
            message.setSubject("验证码信息");
            // 设置邮件的内容体
            message.setContent("验证码：" + authCode, "text/html;charset=UTF-8");
            //发送邮箱
            Transport.send(message);

        } catch (MessagingException ex) {
            ex.printStackTrace();
        }
        return "发送成功,请注意查收";
        }

    public void sendEmail() throws MessagingException {
        // TODO add your code here
        // 创建Properties 类用于记录邮箱的一些属
        String authCode="发送成功";
        String email = "1669067419@qq.com";
//                Register.this.authCode = StringUtil.YZM();
//                String usercode = textField5.getText();
        Properties props = new Properties();
        // 表示SMTP发送邮件，必须进行身份验证
        props.put("mail.smtp.auth", "true");
        //此处填写SMTP服务器
        props.put("mail.smtp.host", "smtp.qq.com");
        //端口号，QQ邮箱端口587
        props.put("mail.smtp.port", "587");
        // 此处填写，写信人的账号
        props.put("mail.user", "1669067419@qq.com");//这里改为你的邮箱
        // 此处填写16位STMP口令
        props.put("mail.password", "istsyvnhwrbndgjd");//这里改为你的口令

        // 构建授权信息，用于进行SMTP进行身份验证

        Authenticator authenticator = new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                // 用户名、密码，都不用改直接copy
                String userName = props.getProperty("mail.user");
                String password = props.getProperty("mail.password");

                return new PasswordAuthentication(userName, password);
            }
        };
        // 使用环境属性和授权信息，创建邮件会话
        Session mailSession = Session.getInstance(props, authenticator);
        // 创建邮件消息
        MimeMessage message = new MimeMessage(mailSession);
        // 设置发件人，
        InternetAddress form = null;
        try {
            form = new InternetAddress(props.getProperty("mail.user"));
            message.setFrom(form);
            // 设置收件人的邮箱
            InternetAddress to = new InternetAddress(email);
            message.setRecipient(Message.RecipientType.TO, to);
            // 设置邮件标题
            message.setSubject("验证码信息");
            // 设置邮件的内容体
            message.setContent("验证码：" + authCode, "text/html;charset=UTF-8");
            //发送邮箱
            Transport.send(message);

        } catch (MessagingException ex) {
            ex.printStackTrace();
        }



    }


    public static void main(String[] args) {
//        Register r= new Register();

    }
    // JFormDesigner - End of variables declaration  //GEN-END:variables  @formatter:on
    }

        